/**
 * 
 */
package com.hhuhh.smarthome.socket;

import com.hhuhh.smarthome.socket.model.BufferData;
import com.hhuhh.smarthome.socket.model.ModelWrapper;
import com.hhuhh.smarthome.socket.model.SimpleData;


/**
 * @author John zhang
 * @version 0.1
 */
public interface AcceptorCallback<Model extends ModelWrapper> {
	
	/**
	 * 服务端请求响应回调,返回的数据由自己指定<Model>
	 * @see {@link SimpleData}对象.服务端返回的数据类型如果是String类型的,统一包装成该对象,根据自己的需要对数据进行获取
	 * @see {@link BufferData}对象,主要是为了解决二进制流数据
	 * @param resp
	 */
	public void onResult( Model model );
	
	/**
	 * 请求或响应超时处理
	 */
	public void readerOrWriterIdleHandler();
	
}
